Kembali ke Portal

Silabus Pembelajaran

Dart Programming Kelas 10B

Silabus semester genap berbentuk tabel standar. Materi Dart dibagi menjadi 32 pertemuan agar setiap bab memiliki waktu penjelasan, latihan, penguatan, dan evaluasi praktik.

Satuan Pendidikan Madrasah/Sekolah
Mata Pelajaran Pemrograman Dart
Kelas/Semester 10B / Genap
Pengajar Ustadz Muhammad Reifqi Thufail Fahmi

Tujuan Umum

Capaian Pembelajaran Semester

Peserta didik memahami konsep dasar bahasa Dart dan alur kerja program.
Peserta didik mampu memakai variabel, tipe data, operator, dan struktur kontrol.
Peserta didik mampu membuat function dasar dan function lanjutan secara rapi.
Peserta didik mampu menerapkan null safety, ternary, asynchronous, dan closure.
Peserta didik mampu menyelesaikan project sederhana berbasis Dart.

Format Silabus

Rencana Pembelajaran 32 Pertemuan

No. Pertemuan Kompetensi/Tujuan Pembelajaran Materi Pokok Kegiatan Pembelajaran Penilaian Alokasi Waktu Sumber Belajar
1 1 Memahami aturan kelas, target semester, dan cara belajar coding. Orientasi kelas, kontrak belajar, pengenalan Dart Masterclass. Diskusi, demo portal, pengenalan cara membuka materi dan latihan. Observasi keaktifan. 2 JP Portal utama, README.
2 2 Menjelaskan pengertian Dart dan alasan mempelajarinya. Bab 1: Apa itu Dart, ekosistem, use case. Pemaparan, tanya jawab, identifikasi contoh aplikasi berbasis Dart/Flutter. Tanya jawab lisan. 2 JP Bab 1, dart.dev.
3 3 Memahami sejarah Dart dan perkembangan fitur modern. Bab 1: Sejarah Dart, Dart SDK, DartPad, tools editor. Membaca timeline, demo DartPad, menulis catatan konsep penting. Catatan belajar. 2 JP Bab 1, DartPad.
4 4 Menjalankan program Dart sederhana. Bab 1: Program pertama, print, main function. Praktik menulis dan menjalankan program hello world serta variasinya. Praktik individu. 2 JP Bab 1, editor/DartPad.
5 5 Membedakan variabel, konstanta, dan tipe data dasar. Bab 2: var, final, const, int, double, String, bool. Penjelasan konsep, contoh kode, latihan deklarasi data diri. Latihan tertulis dan praktik. 2 JP Bab 2.
6 6 Menggunakan type inference dan dynamic secara tepat. Bab 2: Type inference, dynamic, kesalahan tipe data. Analisis contoh benar/salah, debugging sederhana. Kuis singkat. 2 JP Bab 2.
7 7 Mengolah data sederhana memakai variabel dan tipe data. Bab 2: Mini latihan profil siswa dan perhitungan dasar. Praktik membuat output biodata dan perhitungan nilai. Produk kode sederhana. 2 JP Bab 2, DartPad.
8 8 Memahami struktur dasar program Dart. Bab 3: Struktur file, main function, komentar. Menandai bagian program, latihan komentar single-line dan multi-line. Penugasan kecil. 2 JP Bab 3.
9 9 Menggunakan import, library, dan top-level function sederhana. Bab 3: Import, library, top-level function. Demo penggunaan library bawaan dan pemecahan fungsi sederhana. Praktik terarah. 2 JP Bab 3, dokumentasi Dart.
10 10 Menulis program dengan struktur yang rapi dan mudah dibaca. Bab 3: Format kode, penamaan variabel, kebiasaan clean code. Refactor contoh kode berantakan menjadi lebih rapi. Review kode. 2 JP Bab 3.
11 11 Menggunakan operator aritmatika dan assignment. Bab 4: +, -, *, /, %, ~/ dan assignment. Latihan operasi angka dan simulasi kasir sederhana. Latihan praktik. 2 JP Bab 4.
12 12 Menggunakan operator perbandingan dan logika. Bab 4: ==, !=, >, <, >=, <=, &&, ||, !. Studi kasus validasi nilai, umur, dan status kelulusan. Kuis dan praktik. 2 JP Bab 4.
13 13 Menerapkan operator dalam program kecil. Bab 4: Latihan kalkulator dan konversi satuan. Praktik mandiri dengan pendampingan debugging. Produk program. 2 JP Bab 4, DartPad.
14 14 Menggunakan percabangan if-else untuk pengambilan keputusan. Bab 5: If, else if, else. Latihan menentukan grade nilai dan kategori input. Praktik individu. 2 JP Bab 5.
15 15 Menggunakan switch-case untuk pilihan program. Bab 5: Switch-case, break, default. Membuat menu sederhana dan membandingkan dengan if-else. Latihan kode. 2 JP Bab 5.
16 16 Menggunakan perulangan for, while, dan do-while. Bab 5: Loop, break, continue. Latihan tabel perkalian, hitung total, dan pola angka. Praktik terstruktur. 2 JP Bab 5.
17 17 Menggabungkan variabel, operator, dan control flow. Review Bab 1-5 dan latihan terpadu. Pemecahan soal bertahap, diskusi error umum, pembahasan solusi. Latihan terpadu. 2 JP Bab 1-5.
18 18 Mengukur pemahaman dasar pemrograman Dart. Penilaian Tengah Semester. Ujian teori singkat dan praktik membuat program kecil. PTS teori dan praktik. 2 JP Bab 1-5.
19 19 Memahami fungsi sebagai blok kode yang dapat digunakan ulang. Bab 6: Deklarasi function dan return value. Demo function, latihan memecah program menjadi beberapa fungsi. Praktik individu. 2 JP Bab 6.
20 20 Menggunakan parameter positional, named, dan optional. Bab 6: Parameter function. Latihan function untuk hitung nilai, diskon, dan biodata. Latihan kode. 2 JP Bab 6.
21 21 Menerapkan function dalam mini project sederhana. Bab 6: Mini project function dasar. Membuat kumpulan function kalkulator dan validator input. Produk mini project. 2 JP Bab 6, DartPad.
22 22 Menggunakan arrow function dan inner function. Bab 7: Short expression dan inner function. Mengubah function biasa menjadi arrow function dan membuat nested helper. Praktik terarah. 2 JP Bab 7.
23 23 Memahami function sebagai first-class citizen dan callback. Bab 7: Callback, function sebagai parameter. Latihan custom operation dan filter data sederhana. Kuis praktik. 2 JP Bab 7.
24 24 Menerapkan function lanjutan dalam project kecil. Bab 7: Mini project text processor atau shopping cart. Praktik berpasangan, review hasil, perbaikan struktur kode. Produk dan presentasi singkat. 2 JP Bab 7.
25 25 Memahami null dan risiko error pada program. Bab 8: Null, nullable type, non-nullable type. Analisis contoh error, latihan variabel nullable dan non-nullable. Latihan kode. 2 JP Bab 8.
26 26 Menggunakan null-aware operator dan ternary operator. Bab 8: ??, ?., !, ternary operator. Membuat validasi data user dan output default. Praktik individu. 2 JP Bab 8.
27 27 Menggunakan asynchronous programming dasar. Bab 9: Future, async, await. Demo simulasi fetch data, delay, dan urutan eksekusi program. Observasi dan latihan. 2 JP Bab 9.
28 28 Memahami anonymous function dan higher order function. Bab 9: Anonymous function, map, where, forEach. Latihan transformasi list data siswa dan filter nilai. Latihan praktik. 2 JP Bab 9.
29 29 Memahami scope, closure, dan rekursi secara dasar. Bab 9: Scope, closure, recursive function. Demo counter dengan closure dan contoh rekursi faktorial. Kuis praktik. 2 JP Bab 9.
30 30 Merancang project akhir berbasis materi semester genap. Project akhir: kalkulator pintar, sistem nilai, todo list, atau validator. Pembentukan kelompok/individu, pemilihan project, rancangan fitur. Proposal project. 2 JP Bab 1-9.
31 31 Mengembangkan dan memperbaiki project akhir. Implementasi project dan debugging. Praktik coding, konsultasi, review bug, dan penyempurnaan output. Progress project. 2 JP Bab 1-9, DartPad/editor.
32 32 Mempresentasikan hasil belajar dan project akhir. Review akhir, presentasi project, Penilaian Akhir Semester. Demo project, refleksi pembelajaran, evaluasi teori dan praktik. PAS dan project akhir. 2 JP Seluruh materi.

Penilaian

Komponen Nilai

15%Kehadiran, adab belajar, dan keaktifan
25%Latihan kelas dan tugas rumah
25%Penilaian tengah semester
35%Project akhir dan penilaian akhir semester